// pages/profile/index.ts
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    if(!getApp().token) return
    if(!getApp().userProfile.nickName){
      this.getUserInfo()
    }else{
    this.setData({
      ...getApp().userProfile
    })
   }
  },
  // 获取用户信息
  async getUserInfo(){
    const res=await wx.http.get('/userInfo')
    // console.log(res)
    this.setData({...res})
    getApp().userProfile={
      nickName:res.nickName,
      avatar:res.avatar
    }
  },
  // 将用户信息更新到视图
  async getUserNickname(event){
  // console.log(event)
  if(!event.detail.value) return
  await wx.http.put('/userInfo',{nickName:event.detail.value})
  wx.utils.toast('更新成功')
  // 更新用户名称页面视图
  this.setData({nickName:event.detail.value})
  getApp().userProfile.nickName=event.detail.value
  },
  // 更新用户头像
  updateAvatar({detail}){
    // 获取临时地址
    // console.log(event)
    // 将临时地址上传到自己的服务器
    wx.uploadFile({
      // 插件只对 wx.request封装了! 没有对wx.uploadFile进行封装
      url:wx.http.baseURL+ '/upload',
      filePath: detail.avatarUrl,
      name:'file',
      header:{
        Authorization:`Bearer `+ getApp().token
      },
      formData: {
        type:'avatar'
      },
      success: ({data})=>{
        // console.log(data)
      const res=JSON.parse(data)
      if(res.code===10000){
        this.setData({
          avatar:res.data.url
        })
      getApp().userProfile.avatar=res.data.url
      }else{
        wx.utils.toast(res.message)
      }
      },
      fail: ()=>{},
      complete: ()=>{}
    });

  },
  // 
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})